<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    // 作用域: 代码的执行区域
    // 块级作用域: 包含成对{}的代码执行区域  

    // 注意: 对象是数据,不是块级作用域

    // 如: 
    // if(){}
    // if...else if ... else
    // switch(){}
    // for(){}
    // while(){}
    // do{}while()
    // {}   最纯净的块级作用域
    
   /*  var obj = {
        a:1,
        b:2,
        alert(1111)
    } */

    /* debugger;
    if(true){
        var a = 10;
        let b = 20;
        const c = 30;
        console.log(a,b,c);
    }
    console.log(a);
    console.log(b);
    console.log(c); */


    {   
        // 块级作用域中 let const声明的变量也没有变量提升,也无法重复声明(暂时性死区),对var没有影响
        var a = 10;
        let b = 20;
        const c = 30;
        console.log(a,b,c);
    }
    console.log(a);
    console.log(b);
    console.log(c);






</script>
</html>